﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Text;
using System.Net.Mail;
using System.Net;
using System.Windows.Forms;
using System.Data;

namespace Registro
{
    public class ControladorRecuperarClave : System.Web.UI.Page
    {
        BaseDatos bd = new BaseDatos();
        Usuario usuario = new Usuario();
        public Boolean leerEmail(String numeroEmpleado)
        {
            HttpContext.Current.Session["objeto"] = usuario;
            DataRow dr = bd.LeerUnRegistro("CALL consultarUsuario('" + numeroEmpleado + "');");
            if (dr != null)
            {
                usuario.numeroEmpleado = numeroEmpleado;
                usuario.clave = dr["contrasena"].ToString();
                usuario.nombre = dr["nombre"].ToString();
                usuario.email = dr["email"].ToString();
                mensaje.Show("Se envio la contraseña al email: "+usuario.email);
                return true;
            }
            else
                mensaje.Show("El usuario no esta registrado");
                //Response.Write("<script language='JavaScript'>window.alert('El usuario no esta registrado')</script>");
            return false;
        }

        public Boolean SendMail()
        {
            try
            {
                //Configuración del Mensaje
                MailMessage mail = new MailMessage();
                SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com");
                //Especificamos el correo desde el que se enviará el Email y el nombre de la persona que lo envía
                mail.From = new MailAddress("registroasistenciauth@gmail.com", "Administrador", Encoding.UTF8);
                //Aquí ponemos el asunto del correo
                mail.Subject = "Recuperacion de contraseña";
                //Aquí ponemos el mensaje que incluirá el correo
                mail.Body = "UNIVERSIDAD TECNOLOGICA DE HERMOSILLO"+Environment.NewLine+"RECUPERACION DE DATOS DE ACCESO:"+Environment.NewLine+"Hola "+usuario.nombre+"."+Environment.NewLine+"La contraseña es: "+usuario.clave;
                //Especificamos a quien enviaremos el Email, no es necesario que sea Gmail, puede ser cualquier otro proveedor
                mail.To.Add(usuario.email);
                //Si queremos enviar archivos adjuntos tenemos que especificar la ruta en donde se encuentran
                //mail.Attachments.Add(new Attachment(@"C:\Documentos\carta.docx"));

                //Configuracion del SMTP
                SmtpServer.Port = 587; //Puerto que utiliza Gmail para sus servicios
                //Especificamos las credenciales con las que enviaremos el mail
                SmtpServer.Credentials = new System.Net.NetworkCredential("registroasistenciauth@gmail.com", "administradoruth");
                SmtpServer.EnableSsl = true;
                SmtpServer.Send(mail);
                return true;
            }
            catch (Exception ex)
            {
                return false;
            }
        }
    }
}